home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Magnum One
/
Magnum One (Mid-American Digital) (Disc Manufacturing).iso
/
d27
/
creatopt.arc
/
PGMREXIT.CLP
< prev
next >
Wrap
Text File
|
1991-12-04
|
6KB
|
77 lines
/* CRTOPT PUBAUT(*ALL) */
/*********************************************************************/
/* PROGRAM- PGMREXIT */
/* AUTHOR- GREG THIELEN */
/* DATE WRITTEN- JANUARY 1, 1985 */
/* PROGRAM DESCRIPTION- EXIT PROGRAM FOR DSPPGMMNU CMD. */
/*********************************************************************/
PGM PARM(&OPTION &PARM &TYPE &PARM2 &TEXT &LOGRQS +
&SRCFILE &SRCLIB &OBJLIB &JOBD &RQSLEN +
&RQSDTA512 &CF4 &CF11 &OBJEXIST)
DCL VAR(&OPTION) TYPE(*CHAR) LEN(2)
DCL VAR(&PARM) TYPE(*CHAR) LEN(10)
DCL VAR(&TYPE) TYPE(*CHAR) LEN(4)
DCL VAR(&PARM2) TYPE(*CHAR) LEN(21)
DCL VAR(&TEXT) TYPE(*CHAR) LEN(50)
DCL VAR(&LOGRQS) TYPE(*CHAR) LEN(4)
DCL VAR(&SRCFILE) TYPE(*CHAR) LEN(10)
DCL VAR(&SRCLIB) TYPE(*CHAR) LEN(10)
DCL VAR(&OBJLIB) TYPE(*CHAR) LEN(10)
DCL VAR(&JOBD) TYPE(*CHAR) LEN(10)
DCL VAR(&RQSLEN) TYPE(*DEC) LEN(3 0)
DCL VAR(&RQSDTA512) TYPE(*CHAR) LEN(512)
DCL VAR(&CF4) TYPE(*LGL)
DCL VAR(&CF11) TYPE(*LGL)
DCL VAR(&OBJEXIST) TYPE(*LGL)
DCL VAR(&RQSDTA256) TYPE(*CHAR) LEN(256)
DCL VAR(&RQSERR) TYPE(*LGL)
DCL VAR("E) TYPE(*LGL)
DCL VAR(&R512INX) TYPE(*DEC) LEN(3 0)
DCL VAR(&R256INX) TYPE(*DEC) LEN(3 0)
DCL VAR(&MSGID) TYPE(*CHAR) LEN(7)
DCL VAR(&MSGF) TYPE(*CHAR) LEN(10)
DCL VAR(&MSGFLIB) TYPE(*CHAR) LEN(10)
DCL VAR(&MSGDTA) TYPE(*CHAR) LEN(132)
CHGVAR VAR(&RQSDTA256) VALUE('CALL PGMRCREAT ''')
CHGVAR VAR(%SST(&RQSDTA256 17 10)) VALUE(&SRCFILE)
CHGVAR VAR(%SST(&RQSDTA256 27 10)) VALUE(&SRCLIB)
CHGVAR VAR(%SST(&RQSDTA256 37 10)) VALUE(&PARM)
CHGVAR VAR(%SST(&RQSDTA256 47 3)) VALUE(&RQSLEN)
CHGVAR VAR(&RQSERR) VALUE('0')
CHGVAR VAR("E) VALUE('0')
CHGVAR VAR(&R256INX) VALUE(50)
CHGVAR VAR(&R512INX) VALUE(1)
/* Examine request to expand embedded single quotes. */
STRRQS: CHGVAR VAR(%SST(&RQSDTA256 &R256INX 1)) +
VALUE(%SST(&RQSDTA512 &R512INX 1))
IF COND(&R512INX *LT &RQSLEN) THEN(DO)
IF COND((%SST(&RQSDTA512 &R512INX 1) *EQ '''') +
*AND (*NOT "E)) THEN(CHGVAR VAR("E) +
VALUE('1'))
ELSE CMD(DO)
CHGVAR VAR("E) VALUE('0')
CHGVAR VAR(&R512INX) VALUE(&R512INX + 1)
ENDDO
IF COND(&R256INX *LT 255) THEN(DO)
CHGVAR VAR(&R256INX) VALUE(&R256INX + 1)
GOTO CMDLBL(STRRQS)
ENDDO
ELSE CMD(CHGVAR VAR(&RQSERR) VALUE('1'))
ENDDO
IF COND(&RQSERR) THEN(SNDPGMMSG MSGID(CPF9898) +
MSGF(QCPFMSG) MSGDTA('Command too long to +
submit') MSGTYPE(*ESCAPE))
CHGVAR VAR(&R256INX) VALUE(&R256INX + 1)
CHGVAR VAR(%SST(&RQSDTA256 &R256INX 1)) VALUE('''')
SBMJOB JOB(&PARM) JOBD(&JOBD) RQSDTA(&RQSDTA256) +
LOG(0)
MONMSG MSGID(CPF0000)
RCVMSG: RCVMSG MSGDTA(&MSGDTA) MSGID(&MSGID) MSGF(&MSGF) +
MSGFLIB(&MSGFLIB)
IF COND(&MSGID *NE ' ') THEN(DO)
SNDPGMMSG MSGID(&MSGID) MSGF(&MSGF.&MSGFLIB) +
MSGDTA(&MSGDTA)
GOTO CMDLBL(RCVMSG)
ENDDO
ENDPGM